<?php
/**
 * Clase agregada para manejar el formulario de las encuestas
 * Autor: Roberto Hernández De La Luz
 */
class EncuestaForm extends BaseForm
{
    /**
     * Metodo para configurar el formulario
     */
      public function configure()
      {

            $this->widgetSchema['nombrec']= new sfWidgetFormInput();
            
            $years = range(date('Y'), date('Y')+1);
            $this->widgetSchema['fecha'] = new sfWidgetFormJQueryDate(array('config' => '{firstDay: 1, changeMonth: true, changeYear: true}', 'culture' => 'es', 'date_widget' => new sfWidgetFormDate(array('years' => array_combine($years, $years), 'format' => '%day%%month%%year%' ))));
      
            $this->widgetSchema['placa']= new sfWidgetFormInput();
            //$this->widgetSchema['numeroorden']= new sfWidgetFormInput();
            
            $opciones = array('0' => 'No', '1' => 'Si');
            
            $this->widgetSchema['atencionhora']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['atencioncortesia']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['reparado']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['entregatiempo']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['tiemporazonable']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['repuestos']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['costos']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['asesorinfo']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['ruta']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            $this->widgetSchema['ocasion']= new sfWidgetFormChoice(array('choices' => $opciones, 'expanded' => true));
            
            $this->widgetSchema['email']= new sfWidgetFormInput();
            $this->widgetSchema['comentario']= new sfWidgetFormTextarea();
            
            //Widget especial para captchas
            $this->widgetSchema['captcha'] = new sfWidgetFormReCaptcha(array('public_key' => '6LdLOM4SAAAAAO6B-j_kUweaf2vEUveMwl_0a3xz'));
            


        $this->widgetSchema->setLabels(array(
          'nombrec'  => 'Nombre del cliente:',
          'fecha'   => 'Fecha:',
          'placa'  => 'Placa del vehículo:',
          'atencionhora'  => 'Lo atendieron a la hora de su cita',
          'atencioncortesia'  => 'Estuvo satisfecho con la atención y cortesía del Asesor de Servicio',
          'reparado'  => 'Fue reparado correctamente su vehículo la primera vez',
          'entregatiempo'  => 'Fue entregado en el tiempo prometido',
          'tiemporazonable'  => 'Este tiempo prmetido le pareció razonable',
          'repuestos'  => 'Le mostraron los repuestos reemplazados',  
          'costos'  => 'El costo de los Repuestos y Mano de Obra fue razonable',
          'asesorinfo'  => 'El Asesor lo mantuvo informado del estado de su vehículo',
          'ruta'  => 'Le parece accesible nuestra ruta',
          'ocasion'  => 'Podemos contar con su opinión en otra ocación y contactarlo vía correo electrónico',
          'email'  => 'Email:',
          'comentario'  => 'Comentario:',
          'captcha' => ' ',
          
        ));


           $this->setValidators(array(
              'atencionhora'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'atencioncortesia'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'reparado'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'entregatiempo'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'tiemporazonable'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'repuestos'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'costos'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'asesorinfo'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'ruta'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')),
              'ocasion'    => new sfValidatorChoice(array('choices' => array_keys($opciones), 'required' => true), array('required' => 'Seleccione una opcion.')), 
              'email'   => new sfValidatorEmail(array('required' => true), array('required' => 'El campo email es obligatorio.', 'invalid' => 'El formato del email es incorrecto')),
              'comentario'   => new sfValidatorString(array('required' => false), array('required' => 'El campo es obligatorio.')),
              'nombrec'   => new sfValidatorString(array('required' => true), array('required' => 'El campo es obligatorio.')),
              'fecha'   => new sfValidatorDate(array(), array('min' => 'La fecha debe ser mayor al dia de hoy', 'required' => 'Por favor escoja una fecha', 'invalid' => 'Fecha incorrecta verifique su eleccion')),
              'placa'   => new sfValidatorString(array('required' => true), array('required' => 'El campo es obligatorio.')),
              'captcha' => new sfValidatorReCaptcha(array('private_key' => '6LdLOM4SAAAAAJlJkJL7nGQw47-cJ1QtpEzYe0St'), array('required' => 'El Campo es Obligatorio', 'captcha' => 'El texto introducido no coincide')),
            ));
           
           $this->widgetSchema->setNameFormat('encuesta[%s]');
           
      }

}
?>
